The Time Division-Synchronous Code Division Multiple Access (TD-SCDMA) is one of three mainstream standards of the 3G, and has a wide application prospect, wherein the composition of the Turbo encoder defined in the protocol is a Parallel Concatenated Convolutional Code (PCCC), which comprises two 8-state constituent encoders and one Turbo code internal interleaver. The encoding rate of the Turbo coder is 1/3, of which the structure is as shown in FIG. 1.
The transfer function of the 8-state constituent code for the PCCC is:
                    G        ⁡                  (          D          )                    =              [                  1          ,                                                    g                1                            ⁡                              (                D                )                                                                    g                0                            ⁡                              (                D                )                                                    ]              ,                  ⁢    wherein              g      ⁢                          ⁢      0      ⁢              (        D        )              =          1      +              D        ⁢                                  ⁢        2            +              D        ⁢                                  ⁢        3                        g      ⁢                          ⁢      1      ⁢              (        D        )              =          1      +      D      +              D        ⁢                                  ⁢        3            
wherein D, D2 and D3 refer to the number of delayed clocks of the tap position relative to the input data, and 1 denotes that the tap position is the input data, D denotes that the tap position is delayed for 1 clock relative to the input data, and D2 denotes that the tap position is delayed for 2 clocks relative to the input data, and so on.
The initial value of the shift register shall be configured to all zeros when starting to encode the input bits.
The output of the Turbo encoder is:
x1,z1, z′1, x2, z2, z′2, . . . , xK, zK, z′K,
wherein x1, x2, . . . , xK are the bits input to the Turbo encoder namely the first 8-state constituent encoder and Turbo code internal interleaver, K is the number of bits, and z1, z2, . . . , zK and z′1, z′2, . . . , z′K are the bits output from the first and second 8-state constituent encoders respectively.
The bits output from Turbo code internal interleaver are denoted as x′1, x′2, . . . , x′K, and these bits are to be input to the second 8-state constituent encoder.
Rate matching refers to bits on a Transport Channel (TrCh) being repeated or punctured. The higher layer assigns one rate matching attribute for each transport channel. This attribute is semi-static and can only be changed through the higher layer signaling. When the number of bits to be repeated or punctured is calculated, the rate matching attribute requires using.
The number of bits in one transport channel can change in different transmission time intervals. If the number of bits changes in different transmission time intervals, bits will be repeated so as to ensure the total bit rate after multiplexing the TrCHs is the same with the total channel bit rate of the assigned physical channel.
Bit separation and collection in rate matching
The structure of the apparatus for the rate matching is as shown in FIG. 2, which comprises a bit separation unit, two matching operation units and a bit collection unit. The systematic bits, the first parity check bits, and the second parity check bits in the bit sequence input to the apparatus for rate matching are therefore separated into three sequences. The systematic bits of Turbo encoded TrCH shall not be punctured, and the first parity check bits and the second parity check bits can be punctured when the matching operation unit carries out the matching operation.
Wherein the second sequence includes: all of the first parity check bits from the Turbo encoded TrCHs, except those that go into the first sequence when the total number of bits is not a multiple of three, and some of the systematic bits, first and second parity check bits that are for Trellis termination.
The third sequence includes: all of the second parity check bits from Turbo encoded TrCHs, except those that go into the first sequence when the total number of bits is not a multiple of three, and some of the systematic bits, first and second parity check bits that are for Trellis termination.
The second and third sequences shall be of equal length, whereas the first sequence can include 0 to 2 bits more. Puncturing is applied only to the second and third sequences.
Briefly speaking, when the data length which should be practically transmitted is less than the data length generated by the Turbo encoder, the puncturing operation is completed during the rate matching. The Turbo encoding result is divided into three parts of systematic bits, the first path of check bits and the second path of check bits, wherein the systematic bits are not punctured, and data of two paths of check bits are deleted on the deletion principle as equalized as possible to make the total length of the systematic bits plus left data of two paths of check bits to be equal to the data length which should be transmitted practically after puncturing.
However, according to certain data rates configured by the protocol, if parameters are matched according to the rates defined in the protocol when the length of the Turbo code block is 4367, the decoding performance of the Turbo code is severely degraded at least 3 dB.